Skip to content
On this page

Design Pattern

Pattern에 대해서

  • "모든 패턴은 우리의 환경에서 반복적으로 발생하는 문제를 설명하며, 이 문제에 대해 수백만 번이라도 반복해서 적용할 수 있지만 매번 다른 방법으로 적용할 수 있는 해결책의 핵심을 설명하는 것이다. - Christopher Alexander"
  • 패턴의 초점은 하나 이상의 반복적인 문제를 해결하는데 효과적이고 공통적인 특정한 해결책이다.
    • 패턴을 학습할 때 있어서 다음과 같은 특징을 이해해야한다.
      • What : 이 패턴은 무엇인가
      • Why : 이 패턴으로 어떠한 문제를 해결하는가
      • How : 이 패턴으로 문제를 어떻게 해결하는가
  • 숙련된 설계자에게 패턴의 가치는 새로운 개념을 이해하는 것이 아닌 원활한 의사소통의 수단이다.
  • 어떠한 패턴이 항상 올바른 선택인 경우는 많지 않다, 때문에 패턴을 발견할 때마다 항상 스스로에게 "이 패턴이 적절하지 않은 때는 언제일까"라는 질문을 해보자.
    • 이 질문에 대해서 생각하면 대안이 되는 패턴을 떠올릴 때가 많다.
  • 패턴은 출발점으로 유용하지만 목적지는 아니라는 사실을 명심하자. (패턴은 Silver Bullet이 아니다.)
  • 소프트웨어 개발에서 단 한가지 확실한 것이 있다면 모든 것이 변한다는 사실이다, 때문에 모든 패턴은 미완성이며 각각의 시스템 환경에 맞게 완성하는 것은 개발자의 몫이다.
Edit this page
Last updated on 3/17/2023